package bo;

import java.sql.SQLException;
import java.util.List;

import vo.TacticaVO;

import dao.DAOFactory;
import dao.DAOObject;
import dao.TacticaDAO;
import exception.BoException;
import exception.DaoException;

public class TacticaBO extends NegocioBO{

	public void abrirConexion() throws BoException{
		try {
			DAOFactory daoFactory = new DAOFactory();
			this.dao = daoFactory.getTacticaDAO();
		} catch (SQLException aSqlException) {
			throw new BoException(aSqlException.getMessage());
		} catch (DaoException aDaoException) {
			throw new BoException(aDaoException.getMessage());
		} 
	}
	
	/**
	 * Obtiene las tacticas a las que tiene acceso un usuario
	 * @param aNick Datos del usuario del que buscar las tacticas
	 * @return Lista de tacticas disponibles
	 * @throws BoException Posible excepcion a controlar
	 */
	public List<TacticaVO> getTacticas(String aNick)  throws BoException {
		try {
			abrirConexion();
			TacticaDAO tmpDao = (TacticaDAO) getDao();
			List<TacticaVO> resultado = tmpDao.getTacticas(aNick);
			return resultado;
		} catch (DaoException aDaoException) {
			throw new BoException(aDaoException.getMessage());
		} finally {
			cerrarConexion();
		}
	}


}
